Managing data transmissions based on a user&#39;s digital footprint

ABSTRACT

One exemplary system can determine a digital footprint for a user. The system can determine a first transmission pattern in which first content was transmitted to a first user device based at least in part on the digital footprint. The system can determine training data that includes a relationship between (i) one or more characteristics of the first content and (ii) the first transmission pattern. The system can then train a machine-learning-model using the training data to enable the machine-learning-model to predict a second transmission pattern in which to transmit second content that is different from the first content. The system can provide the second content as input to the machine-learning-model to obtain the second transmission pattern as output from the machine-learning-model. The system can cause the second content to be transmitted to the first user device in accordance with the second transmission pattern, which may conserve computing resources.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. application Ser. No.16/939,870, filed Jul. 27, 2020, which is a continuation of U.S.application Ser. No. 16/178,982, filed Nov. 2, 2018, which claims thebenefit of priority under 35 U.S.C. § 119(e) to U.S. Provisional PatentApplication No. 62/581,488, filed Nov. 3, 2017, the entirety of all ofwhich are hereby incorporated by reference herein.

FIELD OF THE INVENTION

The present disclosure relates generally to managing data transmissions.More specifically, but not by way of limitation, this disclosure relatesto managing data transmissions based on a user's digital footprint.

BACKGROUND

Internet-connected devices allow users to engage in various Internetactivities. As a user engages in such activities, the user can leavebehind a digital footprint. A digital footprint includes data thatrepresents the user's Internet activities, such as the user'sinteraction with digital content (e.g., websites, webpages,applications, etc.). Typically, digital footprints only includeinformation resulting from a user performing Internet activities using ahome computer or mobile phone. But with the advent of the “Internet ofThings” (IoT) and smart devices, digital footprints have been expandedto include additional information from other household items, such assmart televisions.

SUMMARY

One example of the present disclosure includes a system that includes aprocessing device and a memory device that includes instructionsexecutable by the processing device. The instructions can cause theprocessing device to determine a digital footprint corresponding to auser, wherein the digital footprint indicates Internet activitiesperformed by the user with a first user device and a second user deviceduring a time period. The instructions can cause the processing deviceto determine, based at least in part on the digital footprint, a firsttransmission pattern in which first content was transmitted to the firstuser device during the time period, wherein the first transmissionpattern resulted in the second user device performing an Internetactivity corresponding to the first content. The instructions can causethe processing device to generate training data that includes arelationship between (i) one or more characteristics of the firstcontent and (ii) the first transmission pattern. The instructions cancause the processing device to train a machine-learning-model using thetraining data to enable the machine-learning-model to predict a secondtransmission pattern in which to transmit second content that isdifferent from the first content. The instructions can cause theprocessing device to provide the second content as input to themachine-learning-model to obtain the second transmission pattern asoutput from the machine-learning-model. The instructions can cause theprocessing device to cause the second content to be transmitted to thefirst user device in accordance with the second transmission pattern.

Another example of the present disclosure includes a method thatincludes determining a digital footprint corresponding to a user,wherein the digital footprint indicates Internet activities performed bythe user with a first user device and a second user device during a timeperiod. The method can also include determining, based at least in parton the digital footprint, a first transmission pattern in which firstcontent was transmitted to the first user device during the time period,wherein the first transmission pattern resulted in the second userdevice performing an Internet activity corresponding to the firstcontent. The method can also include generating training data thatincludes a relationship between (i) one or more characteristics of thefirst content and (ii) the first transmission pattern. The method canalso include training a machine-learning-model using the training datato enable the machine-learning-model to predict a second transmissionpattern in which to transmit second content that is different from thefirst content. The method can also include providing the second contentas input to the machine-learning-model to obtain the second transmissionpattern as output from the machine-learning-model. The method can alsoinclude causing the second content to be transmitted to the first userdevice in accordance with the second transmission pattern. Some or allof these operations can be implemented by a processing device.

Yet another example of the present disclosure includes a non-transitorycomputer-readable medium comprising program code that is executable by aprocessing device for causing the processing device to implement themethod discussed above.

These illustrative examples are mentioned not to limit or define thelimits of the present subject matter, but to aid understanding thereofIllustrative examples are discussed in the Detailed Description, andfurther description is provided there. Advantages offered by variousexamples may be further understood by examining this specificationand/or by practicing one or more examples of the claimed subject matter

BRIEF DESCRIPTION OF THE DRAWINGS

A full and enabling disclosure is set forth more particularly in theremainder of the specification. The specification makes reference to thefollowing appended figures.

FIG. 1 is a block diagram of an example of a system for managing datatransmissions based on a user's digital footprint according to someaspects.

FIG. 2 is a block diagram of an example of a server for managing datatransmissions based on a user's digital footprint according to someaspects.

FIG. 3 is a flow chart of an example of a process for managing datatransmissions based on a user's digital footprint according to someaspects.

DETAILED DESCRIPTION

Most users have several devices through which they perform activities onthe Internet. Each of these Internet activities typically involves theuser's devices communicating with servers. But these servers typicallyhave no data/information indicating that all of the devices belong tothe same user, since the servers do not have a holistic view of all ofthe user's Internet activities across all of the user's devices. As aresult, it is common for the servers to transmit the same data to someor all of the user's devices, such that the user repeatedly sees thesame data. For example, a server may repeatedly and unnecessarilytransmit the same data to a user's cellular phone, smart television, andlaptop, unaware that all of these devices belong to the same user.

Additionally, because these servers typically have no data/informationindicating that all of the devices belong to the same user, it may bedifficult for these servers to determine what combination of datatransmissions ultimately led to the user performing a desired Internetactivity. For example, it is challenging to determine how many times, atwhat frequency, and to which of the user's devices a server transmitteda digital file before the user actually clicked on a link in the digitalfile. As a result, these servers are incapable of learning the mostoptimal ways in which to transmit data to the user's devices so as toelicit a desired response while limiting consumption of computingresources. In the end, the servers typically transmit the same data tothe user's devices far more times than is actually required to elicit adesired response, which may waste valuable computing-resources (e.g.,network bandwidth, processing power, and memory) in the process.

Some examples of the present disclosure can overcome one or more of theabovementioned problems by using a user's digital footprint to determinean optimal transmission pattern at which to transmit data to the user.For example, a server can receive data from multiple sources about theuser's Internet activities in order to develop a digital footprint forthe user. The server can then analyze the digital footprint to identifya pattern in which data was transmitted to the user before the userultimately took a desired action in relation to the data. For example,the server can analyze the digital footprint to determine that a digitalfile was transmitted to the user's devices three times on a particularcombination of days before the user finally clicked a link in thedigital file. The pattern of how many times, at what frequency, and/orto what device(s) the data was transmitted before the user ultimatelytook a desired action in response to the data is referred to herein asan effective transmission pattern. The server can use the effectivetransmission pattern to determine how to transmit other, similardatasets to the user's devices in the future in order to achieve adesired result. The server can use these insights to optimizetransmission of similar datasets to the user's devices in the future(e.g., rather than transmitting the datasets indiscriminately). This mayprevent the unnecessary consumption of computing resources.

Reference will now be made in detail to various and alternativeillustrative examples and to the accompanying drawings. Each example isprovided by way of explanation and not as a limitation. It will beapparent to those skilled in the art that modifications and variationscan be made. For instance, features illustrated or described as part ofone example may be used in another example to yield a still furtherexample. Thus, it is intended that this disclosure include modificationsand variations as come within the scope of the appended claims and theirequivalents.

Illustrative Example of Managing Computing Resources Based on a User'sDigital Footprint

In one illustrative example, a user may be watching a smart television,during which content about an upgrade to the smart television's firmwareis shown. After viewing the content, the user can access a websiterelated to the content with one of the user's other devices, such as theuser's smartphone. The website might contain, for example, a list ofsecurity risks mitigated by the upgrade and other related information.Streaming of the content to the user's smart television and the user'ssubsequent accessing of the website constitute Internet activities thatcan form parts of the user's digital footprint.

In the illustrative example, a system can analyze data generated by theuser's smart television and other data generated by the user'ssmartphone to determine that the two devices belong to the same user.For example, the system can determine that both devices were used tologin to the same website accounts (e.g., social media accounts, e-mailaccounts, etc.) and therefore that both devices likely belong to thesame user. As another example, the server can determine that bothdevices have accessed the Internet using the same IP address andtherefore that both devices likely belong to the same user. The systemcan iterate this process for some or all of the user's devices to createa comprehensive digital footprint for the user.

Having linked data from the user's various devices to create a digitalfootprint for the user, the system then determines an effectivetransmission pattern for the content. For example, the system candetermine that the content was transmitted to the smart television at3:47 PM on a Tuesday. The system can also determine that the websiterelated to the content was accessed by the user's smartphone (asindicated in the user's digital footprint) at 3:48 PM the same day.Since the website was accessed immediately after the content wastransmitted to the smart television, the system can determine thattransmitting the content at least one time, around 3:45 PM, on aTuesday, constitutes an effective transmission pattern for the content.While this is a relatively simple example of a transmission pattern forease of explanation, other examples can involve the server determiningmore complex transmission-patterns from larger amounts of informationderived over significantly longer time periods and associated with acombination of devices in the user's digital footprint.

In the illustrative example, the system iterates the above process bytransmitting various other communications (e.g., other content) to theuser's smart television and analyzing the user's subsequent Internetactivity in order to determine effective transmission patterns for someor all of the communications. If the various communications aresufficiently similar, the system can then use these effectivetransmission patterns as training data in order to train amachine-learning-model to predict an effective transmission pattern fora new communication not yet transmitted to the user. The system candetermine if communications are sufficiently similar by analyzing one ormore attributes of the communications for a preset combination of commoncharacteristics, such as type, length, or keywords.

Additionally, the system may iterate the above process for other usersin order to generate digital footprints for those users. The system canthen use those digital footprints to determine effective transmissionpatterns related to those users. The system can then use those effectivetransmission patterns to train the machine-learning-model, if the systemdetermines that the other users are similar enough to the target user.This can increase the machine-learning-model's accuracy by providing anincreased amount training data. The system can determine if the otherusers are similar enough to the target user by comparing knowninformation about (e.g., TV shows viewed) the users obtained from theirdigital footprints.

In the illustrative embodiment, the system uses the trainedmachine-learning-model to predict an effective transmission pattern fora new communication. The system then uses the prediction to optimizedelivery of the new communication to the user's devices. For example,the system can automatically interact with a server to update how manytimes and at what frequencies they transmit the new communication to theuser's devices, in order to optimize transmission of the newcommunication. This may prevent the unnecessary consumption of theserver's computing resources.

The above description is provided merely as an example. Various otherexamples are described herein and variations of such examples would beunderstood by one of skill in the art. Advantages offered by variousexamples may be further understood by examining this specificationand/or by practicing one or more examples of the claimed subject matter.

Illustrative Systems for Managing Computing Resources Based on a User'sDigital Footprint

FIG. 1 is a block diagram of an example of a system 100 for managingdata transmissions based on a user's digital footprint according to someaspects. The system 100 includes user devices 102 a-b communicativelycoupled to a network 104, such as the Internet. Examples of the userdevices 102 a-b include the “Internet of Things” (IoT) devices and smartdevices, such as smart televisions, smartphones, and wearable devices(e.g., smart watches or smart glasses). Other examples of the userdevices 102 a-b can include personal digital assistants, tablets, laptopcomputers, desktop computers, or any combination of these. A user 106can manipulate the user devices 102 a-b to perform Internet activities,such as visiting a website, downloading software, streaming content, oruploading software.

The user devices 102 a-b can interact with one or more servers 112 a-c(e.g., content servers) to perform the Internet activities. As the userdevices 102 a-b interact with the servers 112 a-c, the servers 112 a-ccapture information 108 about the Internet activities and store theinformation 108 in one or more databases, collectively represented asdatabase 110 in FIG. 1. For example, as the user surfs the web, viewsstreaming content, and downloads software, the servers 112 a-c may storeinformation 108 related to those Internet activities in the database110.

At least one of the servers 112 a-c can access the database 110 and usethe information 108 generate a digital footprint 114 for the user 106,whereby the digital footprint 114 represents the Internet activitiesperformed by the user 106 via any number and combination of userdevices. For example, the server 112 a can begin the process ofgenerating the digital footprint by analyzing a data trail generated bya user device 102 a known to be associated with the user 106. The datatrail may or may not be part of the information 108 stored in thedatabase 110. The server 112 a analyzes the data trail for markers thatuniquely identify the user 106. Examples of the markers can includeonline accounts (e.g., social media, bank, and/or e-mail accounts), ageolocation corresponding to the user 106, an IP address correspondingto the user 106, or any combination of these. Next, the server 112analyzes the information 108 in the database 110 for the markers todetermine some or all of the Internet activities attributable to theuser 106, and forms the user's digital footprint therefrom.

In one particular example, the user device 102 a is a smart televisionto which content is streamed from a server 112 c. Examples of thecontent can include ads. As the content is streamed to the smarttelevision, the server 112 c can store information 108 associated withthe content to the database 110. For example, the server 112 c can storeinformation about the user's viewing habits in relation to thecontent—e.g., whether the user 106 viewed the content or did not viewthe content (e.g., switched channels to avoid viewing the content). Theserver 112 c can also store other information related to the content,such as the network or channel on which the content was delivered, atype of the content, and one or more keywords describing the content.The server 112 a can then access the database 110 and use some or all ofthis information 108 to form the user's digital footprint.

After obtaining (e.g., generating or receiving) the digital footprint114, the server 112 a analyzes the digital footprint 114 to determinerelationships between the content transmitted to one or more userdevices 102 a-b and Internet activities performed by the user 106. Thisanalysis may involve identifying commonalities between the content andthe Internet activities. For example, the server 112 a can determinethat content transmitted to a user device 102 a has certain keywords(e.g., brands and/or products) corresponding to a particular websitevisited by the user 106. As a result, the server 112 a can determinethat a relationship exists between the content and the website.

Having determined relationships the content transmitted to the userdevices 102 a-b and the user's Internet activities, the server 112 a canthen identify patterns in how the content was transmitted to the userdevices 102 a-b prior to (e.g., within a preset timeframe leading up to)the user engaging in corresponding Internet activities. Each pattern canconstitute an effective transmission pattern for the correspondingcontent. For example, the server 112 a can determine a pattern in whichparticular content was transmitted to a user device 102 a during aone-week period leading up to the user 106 visiting a websitecorresponding to the particular content. This pattern can constitute aneffective transmission pattern for the particular content, since thepattern likely caused the user 106 to visit the website. The effectivetransmission pattern can generally be specific to the user 106, or mayalso apply to other users in some instances.

The server 112 a can use the effective transmission patterns for variouspieces of content to create training data for one or moremachine-learning-models 120. Examples of machine-learning-models 120 caninclude neural networks, support vector machines, and classifiers. Tocreate the training data, the server 112 can use a machine-learningmodule 118 to analyze each piece of content in order to identify one ormore characteristics (e.g., textual or image characteristics) of thepiece of content. The server 112 a can the generates training datahaving relationships between each piece of content's characteristics andits corresponding effective transmission pattern, from which the server112 a trains a machine-learning-model 120. In other examples, the server112 creates multiple machine-learning-models 120. For example, theserver 112 can use classifiers (e.g., Naive bias classifiers) toclassify content into various groups, whereby each content group hascommon characteristics. The server 112 then generates separate trainingdata from each content group. The training data can includerelationships between (i) the common characteristics defining a contentgroup and (ii) the effective transmission patterns corresponding to thecontent in the content group. The server 112 can then use the trainingdata for each content group to train separate machine-learning-models120 tailored to the respective content groups.

In the above examples, the machine-learning-models 120 are trained usingeffective transmission patterns derived from the digital footprint 114of the user 106. As a result, these machine-learning-models 120 aregenerally most effective at predicting transmission patterns for thatspecific user 106. But, in other examples, the machine-learning-models120 can be trained using effective transmission patterns derived fromother user's digital footprints. This may lead tomachine-learning-models 120 that are more generally applicable to avariety of users.

After creating the machine-learning-models 120, the server 112 a can usethe machine-learning-models 120 to predict effective transmissionpatterns for known content or unknown content. Known content is contentused to train the machine-learning-models 120, and unknown content iscontent that was not used to train the machine-learning-models 120. Forexample, the server 112 a can receive a piece of unknown content todeliver to the user 106. The server 112 a can input the unknown contentinto the machine-learning-model(s) 120 and receive as output from themachine-learning-model(s) 120 a prediction of an effective transmissionpattern for the unknown content. The effective transmission pattern mayinclude, for example, multiple transmissions of the unknown content tomultiple user devices 102 a-b associated with the user 106 over thecourse of multiple days.

To implement the effective transmission pattern for the new content, theserver 112 a can transmit data to one or more other servers 112 b-c,whereby the data is configured to cause a content-transmission schedule122 corresponding to the unknown content to be adjusted. The data cancause the content-transmission schedule 122 to be adjusted such that theserver(s) 112 b-c deliver the unknown content to one or more of the userdevice(s) 102 a-b in accordance with the effective transmission patternpredicted by the machine-learning-model(s) 120. In some examples, thedata includes commands, program code, or other instructions configuredto cause the one or more other servers 112 b-c to automatically adjustthe content-transmission schedule 122 (e.g., to match the predictedeffective-transmission pattern).

Optimizing transmission of unknown content in the above manner canconserve network bandwidth and prevent the servers 112 b-c from wastingprocessing power and memory, for example, resulting from transmittingthe unknown content too many times. This can also enable the servers 112b-c to better allocate their computing resources among processing tasks,for example, by preemptively knowing how much processing power andmemory to allocate to delivering the unknown content to the user devices102 a-b, and thus how much remaining processing power and memory is freefor other tasks.

In one particular example, the server 112 a can analyze an unknownadvertisement (“ad”) to identify various characteristics of the ad. Theserver 112 a can next input the characteristics into themachine-learning-model(s) 120 to receive as output a prediction of aneffective transmission schedule for the unknown ad. The server 112 a canthen transmit commands to automatically cause the server 112 c to adjusta content-transmission schedule 122 such that the server 112 c deliversthe unknown ad to one or more of the user device(s) 102 a-b inaccordance with the effective transmission pattern predicted by themachine-learning-model(s) 120. This can prevent the server 112 c fromwasting network bandwidth and other computing resources by transmittingthe unknown ad in a suboptimal pattern. This can also enable the server112 c to preemptively allocate its computing resources, such that onlythe required among of computing resources are allocated to deliveringthe unknown ad to the user devices 102 a-b and the remaining computingresources are free to perform other tasks.

Some of the above examples assume that the user's digital footprint 114has sufficient information to derive effective transmission patterns andgenerate machine-learning-models 120. But, in some instances, the user'sdigital footprint may have insufficient information to perform thesetasks. In those cases, the server 112 a can analyze the user's digitalfootprint 114 and/or other sources of information to develop a profiledescribing attributes of the user 106. For example, the server 112 cananalyze the user's digital footprint 114, census information, and datafrom the user's social media account to develop a comprehensive profileof the user 106 indicating 25 or more attributes of the user 106. Forinstance, the profile may indicate that the sex, age, marital status,number of children, job title, salary, hobbies, etc. The server 112 acan repeat this process to create profiles for other users, too. Theserver 112 a can then compare the profile for user 106 to other users'profiles to identify another user that is sufficiently similar to theuser 106, and for whom there is a trained machine-learning-model. Sincethat machine-learning-model is likely also relevant to the user 106, theserver 112 a can use the machine-learning-model to determine aneffective transmission pattern for content to be delivered to the user106.

Although the exemplary system 100 of FIG. 1 is depicted as having acertain number and arrangement of components, other examples can involveother numbers and arrangements of the components. For example, whileFIG. 1 depicts two user devices 112 a-b, other examples can include anynumber and combination of user devices 112 a-b. Likewise, while FIG. 1depicts three servers 112 a-c, other examples can include any number andcombination of servers 112 a-c performing any amount and combination offunctionality described herein. And, while FIG. 1 illustrates thedatabase 110 and the server 112 as being separate from one another, inother examples the server 112 may include the database 110.

FIG. 2 is a block diagram of an example of a server 112 for managingdata transmissions based on a user's digital footprint 114 according tosome aspects. The server 112 includes a processing device 202communicatively coupled with a memory device 204. The processing device202 can include one processing device or multiple processing devices.Non-limiting examples of the processing device 202 include aField-Programmable Gate Array (FPGA), an application-specific integratedcircuit (ASIC), a microprocessor, etc. The processing device 202 canexecute instructions 206 stored in the memory device 204 to performoperations. In some examples, the instructions 206 can includeprocessor-specific instructions generated by a compiler or aninterpreter from code written in any suitable computer-programminglanguage, such as C, C++, C#, etc.

The memory device 204 can include one memory device or multiple memorydevices. The memory device 204 can be non-volatile and may include anytype of memory device that retains stored information when powered off.Non-limiting examples of the memory device 204 include electricallyerasable and programmable read-only memory (EEPROM), flash memory, orany other type of non-volatile memory. In some examples, at least someof the memory device can include a medium from which the processingdevice 202 can read instructions 206. A computer-readable medium caninclude electronic, optical, magnetic, or other storage devices capableof providing the processing device 202 with computer-readableinstructions or other program code. Non-limiting examples of acomputer-readable medium include magnetic disk(s), memory chip(s), ROM,random-access memory (RAM), an ASIC, a configured processor, opticalstorage, or any other medium from which a computer processor can readthe instructions 206.

The server 112 further includes a network interface 208 and input/output(I/O) components 210. Examples of the I/O components can include mice,keyboards, touchpads, displays (e.g., touch-screen displays), printers,etc. In some examples, the server 112 may also include additionalstorage.

Illustrative Methods for Managing Computing Resources Based on a User'sDigital Footprint

FIG. 3 is a flow chart of an example of a process for managing computingresources based on a user's digital footprint according to some aspects.Other examples can include more steps, fewer steps, or a different orderof the steps shown in FIG. 3. The steps below are described withreference to the components of FIGS. 1-2 discussed above, but otherimplementations are possible.

In block 302, a processing device 202 determines a digital footprint 114corresponding to a user 106. In some examples, determining the digitalfootprint 114 can involve generating the digital footprint 114 usinginformation 108 from a database 110. The processing device 302 generatesthe digital footprint 114 by combining data trails left behind by userdevices 102 a-b associated with a user 106 into a single, combineddigital footprint 114 for the user 106. In other examples, determiningthe digital footprint 114 can involve receiving the digital footprint114 from a remote computing device.

In block 304, the processing device 202 determines a first transmissionpattern at which first content was transmitted to any number andcombination of the user devices 102 a-b based at least in part on thedigital footprint 114. For example, the processing device 202 cananalyze the digital footprint 114 to identify each instance in which thefirst content was transmitted to the first user device 102 a and derivea pattern therefrom. As another example, the processing device 202 cananalyze the digital footprint 114 to identify each instance in which thefirst content was transmitted to a combination of user devices 102 a-band derive a pattern therefrom. Either way, the pattern can serve as thefirst transmission pattern.

In block 306, the processing device 202 determines that the firsttransmission pattern constitutes an effective transmission patternrelated to the first content and/or the user 106. In some examples, theprocessing device 202 determines that the first transmission patternconstitutes the first effective transmission pattern if the firsttransmission pattern resulted in a second user device 102 b performing aparticular Internet activity corresponding to the first content.

As one particular example, the processing device 202 can analyze thedigital footprint 114 and determine that, after the first content wastransmitted in the first transmission pattern, the second user device102 b accessed a website or downloaded a file related to (e.g.,specified in) the first content. As a result, the processing device 202can determine that the first transmission pattern likely caused the userdevices 102 a-b to access the website or download the file, and thusthat the first transmission pattern is an effective transmissionpattern. As another example, the first content can be an ad associatedwith a food brand and the first user device 102 a can be a smartrefrigerator. In some such examples, the processing device 202 cananalyze the digital footprint 114 to determine that, after the ad wastransmitted in the first transmission pattern, the smart refrigeratorreported to one of the servers 112 a-c that a new food item associatedwith the brand was added to the refrigerator. As a result, theprocessing device 202 can determine that the first transmission patternlikely caused the user to purchase the food item, and thus that thefirst transmission pattern is an effective transmission pattern.

In block 308, the processing device 202 generates training data thatincludes a relationship between (i) one or more characteristics of thefirst content, and (ii) the first transmission pattern. For example, theprocessing device 202 can build a dataset that includes a relationshipbetween a combination of keywords in the first content and the firsttransmission pattern (e.g., the number of times and/or frequency atwhich the first content was transmitted). The dataset can serve as thetraining data.

In some examples, the processing device 202 also incorporates otherinformation into the training data, too. For example, the processingdevice 202 can determine a plurality of relationships between (i) othercontent delivered to other user devices associated with the same user106 and/or other users, and (ii) other transmission patterns (e.g.,effective transmission patterns) for the other content. The processingdevice 202 can then incorporate the other relationships into thetraining data. More robust training data can lead to more accuratemachine-learning-models.

In block 310, the processing device 202 trains one or moremachine-learning-models 120 using the training data. Training amachine-learning-model 120 can involve tuning weights for nodes in themachine-learning model in order to transform the machine-learning-model120 from an untrained state into a trained state. Once trained, themachine-learning-model(s) 120 can receive an input (e.g., a piece ofcontent or characteristics of a piece of content) and provide atransmission pattern as output.

In block 312, the processing device 202 provides second content as inputinto the one or more machine-learning-models 120. The second content maybe different from the first content. In response, themachine-learning-model(s) 120 can output a second transmission patternfor transmitting the second content to one or more of the user devices102 a-b. The second transmission pattern can be an effectivetransmission pattern related to the second content.

In block 314, the processing device 202 causes the second content to betransmitted to any number and combination of the user devices 102 a-b inaccordance with the second transmission pattern. For example, theprocessing device 202 causes the second content to be transmitted to thefirst user devices 102 a in accordance with the second transmissionpattern.

In some examples, the processing device 202 transmits data comprisingthe second transmission pattern to one or more computing devices (e.g.,servers 112 b-c). This may result in a content-transmission schedule 122associated with the second content being adjusted based on secondtransmission pattern. For example, this may result in thecontent-transmission schedule 122 being automatically adjusted to matchthe second transmission pattern.

In some examples, the processing device 202 also causes computingresources to be allocated based on the second transmission pattern. Forexample, the processing device 202 can transmit the second transmissionpattern to the one or more computing devices, which can receive thesecond transmission pattern and responsively (e.g., automatically)allocate their computing resources based on the second transmissionpattern. In this manner, the computing devices may be able to devotemore computing resources to transmitting the second content at peaktimes in the second transmission pattern and less computing resources atother times, thereby freeing up the computing resources for performingother tasks.

General Considerations

The methods, systems, and devices discussed above are examples. Variousconfigurations may omit, substitute, or add various procedures orcomponents as appropriate. For instance, in alternative configurations,the methods may be performed in an order different from that described,and/or various stages may be added, omitted, and/or combined. Also,features described with respect to certain configurations may becombined in various other configurations. Different aspects and elementsof the configurations may be combined in a similar manner. Also,technology evolves and, thus, many of the elements are examples and donot limit the scope of the disclosure or claims.

Specific details are given in the description to provide a thoroughunderstanding of example configurations (including implementations).However, configurations may be practiced without these specific details.For example, well-known circuits, processes, algorithms, structures, andtechniques have been shown without unnecessary detail in order to avoidobscuring the configurations. This description provides exampleconfigurations only, and does not limit the scope, applicability, orconfigurations of the claims. Rather, the preceding description of theconfigurations will provide those skilled in the art with an enablingdescription for implementing described techniques. Various changes maybe made in the function and arrangement of elements without departingfrom the spirit or scope of the disclosure.

Also, configurations may be described as a process that is depicted as aflow diagram or block diagram. Although each may describe the operationsas a sequential process, many of the operations can be performed inparallel or concurrently. In addition, the order of the operations maybe rearranged. A process may have additional steps not included in thefigure. Furthermore, examples of the methods may be implemented byhardware, software, firmware, middleware, microcode, hardwaredescription languages, or any combination thereof. When implemented insoftware, firmware, middleware, or microcode, the program code or codesegments to perform the necessary tasks may be stored in anon-transitory computer-readable medium such as a storage medium.Processors may perform the described tasks.

Having described several example configurations, various modifications,alternative constructions, and equivalents may be used without departingfrom the spirit of the disclosure. For example, the above elements maybe components of a larger system, wherein other rules may takeprecedence over or otherwise modify the application of the invention.Also, a number of steps may be undertaken before, during, or after theabove elements are considered. Accordingly, the above description doesnot bound the scope of the claims.

The use of “adapted to” or “configured to” herein is meant as open andinclusive language that does not foreclose devices adapted to orconfigured to perform additional tasks or steps. Additionally, the useof “based on” is meant to be open and inclusive, in that a process,step, calculation, or other action “based on” one or more recitedconditions or values may, in practice, be based on additional conditionsor values beyond those recited. Headings, lists, and numbering includedherein are for ease of explanation only and are not meant to belimiting.

Embodiments in accordance with aspects of the present subject matter canbe implemented in digital electronic circuitry, in computer hardware,firmware, software, or in combinations of the preceding. In oneembodiment, a computer may comprise a processor or processors. Theprocessor comprises or has access to a computer-readable medium, such asa random access memory (RAM) coupled to the processor. The processorexecutes computer-executable program instructions stored in memory, suchas executing one or more computer programs including a sensor samplingroutine, selection routines, and other routines to perform the methodsdescribed above.

Such processors may comprise a microprocessor, a digital signalprocessor (DSP), an application-specific integrated circuit (ASIC),field programmable gate arrays (FPGAs), and state machines. Suchprocessors may further comprise programmable electronic devices such asPLCs, programmable interrupt controllers (PICs), programmable logicdevices (PLDs), programmable read-only memories (PROMs), electronicallyprogrammable read-only memories (EPROMs or EEPROMs), or other similardevices.

Such processors may comprise, or may be in communication with, media,for example tangible computer-readable media, that may storeinstructions that, when executed by the processor, can cause theprocessor to perform the steps described herein as carried out, orassisted, by a processor. Embodiments of computer-readable media maycomprise, but are not limited to, all electronic, optical, magnetic, orother storage devices capable of providing a processor, such as theprocessor in a web server, with computer-readable instructions. Otherexamples of media comprise, but are not limited to, a floppy disk,CD-ROM, magnetic disk, memory chip, ROM, RAM, ASIC, configuredprocessor, all optical media, all magnetic tape or other magnetic media,or any other medium from which a computer processor can read. Also,various other devices may comprise computer-readable media, such as arouter, private or public network, or other transmission device. Theprocessor, and the processing, described may be in one or morestructures, and may be dispersed through one or more structures. Theprocessor may comprise code for carrying out one or more of the methods(or parts of methods) described herein.

While the present subject matter has been described in detail withrespect to specific embodiments thereof, it will be appreciated thatthose skilled in the art, upon attaining an understanding of theforegoing may readily produce alterations to, variations of, andequivalents to such embodiments. Accordingly, it should be understoodthat the present disclosure has been presented for purposes of examplerather than limitation, and does not preclude inclusion of suchmodifications, variations and/or additions to the present subject matteras would be readily apparent to one of ordinary skill in the art.

1. A system comprising: one or more processing devices; and one or morememory devices that include instructions executable by the one or moreprocessing devices for causing the one or more processing devices to:determine content to be transmitted to a user; provide the content asinput to a trained machine-learning model, the trained machine-learningmodel being a machine-learning model trained using training data thatincludes a relationship between (i) a first transmission pattern inwhich other content was previously transmitted to a user device of theuser and (ii) one or more characteristics of the other content, whereinthe content is different from the other content; receive an output fromthe trained machine-learning model that includes a second transmissionpattern in which to transmit the content to the user; and cause thecontent to be transmitted to the user in accordance with the secondtransmission pattern.
 2. The system of claim 1, wherein the user deviceis a first user device, and wherein the first transmission pattern is apattern in which the other content was transmitted to the first userdevice that resulted in the user performing an Internet activityassociated with the other content using a second user device.
 3. Thesystem of claim 2, wherein the first user device is anInternet-connected television, and wherein the second user device is amobile phone, tablet, laptop computer, desktop computer, e-reader, or awearable computer.
 4. The system of claim 2, wherein the Internetactivity includes visiting a website.
 5. The system of claim 1, whereinthe first transmission pattern includes multiple transmissions of theother content to the user device over the course of multiple days. 6.The system of claim 1, wherein the training data includes a plurality ofpatterns in which a plurality of content was transmitted to the userdevice during a prior time period, and wherein the plurality of patternsresulted in the user performing a plurality of Internet activitiescorresponding to the plurality of content with one or more other userdevices, the one or more other user devices being different from theuser device.
 7. The system of claim 1, wherein the content is a firstadvertisement and the other content is a second advertisement.
 8. Thesystem of claim 1, wherein the one or more memory devices includeinstructions that are executable by the one or more processing devicesfor causing the one or more processing devices to cause the content tobe transmitted to the user in accordance with the second transmissionpattern by transmitting the second transmission pattern to a server, theserver being configured to update a content-transmission schedule forthe content based on the second transmission pattern.
 9. A methodcomprising: determining, by one or more processing devices, content tobe transmitted to a user; providing, by the one or more processingdevices, the content as input to a trained machine-learning model, thetrained machine-learning model being a machine-learning model trainedusing training data that includes a relationship between (i) a firsttransmission pattern in which other content was previously transmittedto a user device of the user and (ii) one or more characteristics of theother content, wherein the content is different from the other content;receiving, by the one or more processing devices, an output from thetrained machine-learning model that includes a second transmissionpattern in which to transmit the content to the user; and causing, bythe one or more processing devices, the content to be transmitted to theuser in accordance with the second transmission pattern.
 10. The methodof claim 9, wherein the user device is a first user device, and whereinthe first transmission pattern is a pattern in which the other contentwas transmitted to the first user device that resulted in the userperforming an Internet activity associated with the other content usinga second user device.
 11. The method of claim 10, wherein the first userdevice is an Internet-connected television, and wherein the second userdevice is a mobile phone, tablet, laptop computer, desktop computer,e-reader, or a wearable computer.
 12. The method of claim 10, whereinthe Internet activity includes visiting a website.
 13. The method ofclaim 9, wherein the first transmission pattern includes multipletransmissions of the other content to the user device over the course ofmultiple days.
 14. The method of claim 9, wherein the training dataincludes a plurality of patterns in which a plurality of content wastransmitted to the user device during a prior time period, and whereinthe plurality of patterns resulted in the user performing a plurality ofInternet activities corresponding to the plurality of content with oneor more other user devices, the one or more other user devices beingdifferent from the user device.
 15. The method of claim 9, wherein thecontent is a first advertisement and the other content is a secondadvertisement.
 16. The method of claim 9, wherein causing the content tobe transmitted to the user in accordance with the second transmissionpattern comprises transmitting the second transmission pattern to aserver, the server being configured to update a content-transmissionschedule for the content based on the second transmission pattern.
 17. Anon-transitory computer-readable medium comprising program code that isexecutable by one or more processing devices for causing the one or moreprocessing devices to: provide content as input to a trainedmachine-learning model, the trained machine-learning model being amachine-learning model trained using training data that includes arelationship between (i) a first transmission pattern in which othercontent was previously transmitted to a user device of a user and (ii)one or more characteristics of the other content, wherein the content isdifferent from the other content; receive an output from the trainedmachine-learning model that includes a second transmission pattern inwhich to transmit the content to the user; and cause the content to betransmitted to the user in accordance with the second transmissionpattern.
 18. The non-transitory computer-readable medium of claim 17,wherein the user device is a first user device, and wherein the firsttransmission pattern is a pattern in which the other content wastransmitted to the first user device that resulted in the userperforming an Internet activity associated with the other content usinga second user device.
 19. The non-transitory computer-readable medium ofclaim 18, wherein the first user device is an Internet-connectedtelevision, wherein the second user device is a mobile phone, tablet,laptop computer, desktop computer, e-reader, or a wearable computer, andwherein the Internet activity includes visiting a website.
 20. Thenon-transitory computer-readable medium of claim 18, wherein the firsttransmission pattern includes multiple transmissions of the othercontent to the user device over the course of multiple days.
 21. Thenon-transitory computer-readable medium of claim 17, wherein thetraining data includes a plurality of patterns in which a plurality ofcontent was transmitted to the user device during a prior time period,and wherein the plurality of patterns resulted in the user performing aplurality of Internet activities corresponding to the plurality ofcontent with one or more other user devices, the one or more other userdevices being different from the user device.
 22. The non-transitorycomputer-readable medium of claim 17, further comprising program codethat is executable by the one or more processing devices for causing theone or more processing devices to cause the content to be transmitted tothe user in accordance with the second transmission pattern bytransmitting the second transmission pattern to a server, the serverbeing configured to update a content-transmission schedule for thecontent based on the second transmission pattern.